import { _decorator, Component, Node } from 'cc';
import UIManager from './utils/UIFramework/UIManager';
import DataManager from './utils/DataSystem/DataManager';
import AppStateBlock from './StateBlock/AppStateBlock';
import { IObjectItem, ObjectPool } from './utils/ObjectPool/ObjectPool';
import EntityManager from './utils/EntitySystem/EntityManager';
import EntityBase from './utils/EntitySystem/EntityBase';
const { ccclass, property } = _decorator;

@ccclass('AppStart')
export class AppStart extends Component {
    appStateBlock : AppStateBlock = new AppStateBlock();

    protected async onLoad() {
        this.InitAll();
        this.appStateBlock.Start();
        
    }

    public InitAll(){
        UIManager.Instance.Init();
        EntityManager.Instance.Init();
        DataManager.Instance.Init();
    }
}
